package com.lysj.bhp.util.web;

/**
 * @author soul 服务器向客户端响应的domain对象
 */
public class Resp {

    public final static Integer SUCCESS = 200; // 成功

    public final static Integer NO_LOGIN = 401; // 还没有登录
    public final static Integer NO_ACCESS = 403;// 没有权限

    public final static Integer PARAM_ERROR = 412; // 参数错误

    public final static Integer TOKEN_ERROR = 422; // Token错误

    public final static Integer INNER_ERROR = 500; // 系统内部错误

    /**
     * 结果:结果码
     */
    private Integer code;

    /**
     * 提示信息
     */
    private String msg;

    /**
     * 响应的对象
     */
    private Object obj;

    /**
     * 此构造器创建一个消息提示对象【状态，消息】
     *
     * @param result
     * @param code
     * @param msg
     */
    public Resp(Integer code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    /**
     * 此构造器创建一个成功消息提示对象【消息】
     *
     * @param result
     * @param code
     * @param msg
     */
    public Resp(String msg) {
        this.code = Resp.SUCCESS;
        this.msg = msg;
    }

    /**
     * 此构造器创建一个成功响应对象(对象或者集合)【对象，消息】
     */
    public Resp(Object obj, String msg) {
        this.code = Resp.SUCCESS;
        this.msg = msg;
        this.obj = obj;
    }

    /**
     * 此构造器创建一个成功响应对象(对象或者集合)【对象】
     */
    public Resp(Object obj) {
        this.code = Resp.SUCCESS;
        this.msg = "success";
        this.obj = obj;
    }

    /**
     * 此构造器创建一个通用响应对象【状态码,消息,对象】
     */
    public Resp(Integer code, String msg, Object obj) {
        this.code = code;
        this.msg = msg;
        this.obj = obj;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public Object getObj() {
        return obj;
    }

    public void setObj(Object obj) {
        this.obj = obj;
    }

}
